/*
 * $Id: $
 */
package org.rcgwt.client.ui.grid.renderer;

import org.rcgwt.client.ui.grid.internal.model.ITitleCellModel;
import org.rcgwt.client.ui.grid.internal.model.ITitleRowModel;

import com.google.gwt.dom.client.Element;

/**
 * 
 * @author Olivier Oeuillot (latest modification by $Author: $)
 * @version $Revision: $ $Date: $
 */
public interface ITitleRowRenderer extends IRenderer<ITitleRowModel> {
	void updateLayout(IViewRenderContext renderContext,
			ITitleRowModel titleRow, Element element, int totalSize,
			int columnSizes[], int titleRowHeight);

	int getSize(IViewRenderContext viewRenderContext,
			ITitleRowModel titleRowModel, Element titleRowElement);

	void setFocus(IViewRenderContext gridRenderContext,
			ITitleRowModel titleRowModel, Element titleRowElement);

	ITitleCellModel getTitleCellModelByRenderedIndex(
			IViewRenderContext gridRenderContext, ITitleRowModel titleRowModel,
			Element titleRowElement, int titleCellRenderedIndex);

	int getTitleCellRenderedIndex(IViewRenderContext viewRenderContext,
			ITitleRowModel titleRowModel, Element titleRowElement,
			ITitleCellModel titleCellModel);
}
